﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.SharePoint.Administration.Health;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using FluentAssertions;

namespace SDS.SPHealthAnalyzerRules.Delegation.Tests.Rules
{
    [TestClass]
    public class ServiceApps : Base
    {

        [TestMethod]
        public void BCS_Using_Delegation()
        {
            var healthRule = new SDS.SPHealthAnalyzerRules.Delegation.Rules.BCS_Using_Delegation();

            var Results = healthRule.Check();

            Results.Should().Be(SPHealthCheckStatus.Passed, TestHealthRule_Message(healthRule));

        }

        [TestMethod]
        public void ExcelSvcs_Using_ConstrainedDelegation()
        {
            var healthRule = new SDS.SPHealthAnalyzerRules.Delegation.Rules.ExcelSvcs_Using_ConstrainedDelegation();

            var Results = healthRule.Check();

            Results.Should().Be(SPHealthCheckStatus.Passed, TestHealthRule_Message(healthRule));

        }

        [TestMethod]
        public void VisioSvcs_Using_ConstrainedDelegation()
        {
            var healthRule = new SDS.SPHealthAnalyzerRules.Delegation.Rules.VisioSvcs_Using_ConstrainedDelegation();

            var Results = healthRule.Check();

            Results.Should().Be(SPHealthCheckStatus.Passed, TestHealthRule_Message(healthRule));

        }

        [TestMethod]
        public void PerformancePointServicesAppPool_Using_ConstrainedDelegation()
        {
            var healthRule = new SDS.SPHealthAnalyzerRules.Delegation.Rules.PerformancePointServicesAppPool_Using_ConstrainedDelegation();

            var Results = healthRule.Check();

            Results.Should().Be(SPHealthCheckStatus.Passed, TestHealthRule_Message(healthRule));

        }

    } // class
} // namespace